package com.example.domain.thirdPartyResponseParam;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.util.List;
import java.util.Map;

@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper=false)
public class ZhihuiyaErrorApiResponse extends ZhihuiyaApiResponse {

    private String errorMsg; // 错误消息
    private Map<String, Object> errorParams; // 错误参数
    private Data data; // 具体的数据部分

    @lombok.Data
    @EqualsAndHashCode(callSuper=false)
    public static class Data extends ZhihuiyaApiResponse.Data{
        private int numericErrorCode; // 数字错误代码
        private String errorCode; // 错误代码（字符串格式）
        private String errorMessage; // 错误消息
        private List<String> messageVars; // 消息变量
        private String originatingService; // 发起服务
        private String timestamp; // 时间戳
        private Map<String, Object> errorParams; // 其他错误参数
        private String trackingId; // 跟踪 ID
    }
}